மேம்பட்ட டைப் சேஃப்டி நுட்பங்களை ஆராய டைப்ஸ்கிரிப்ட் பயணத்தைத் தொடங்குங்கள். நம்பிக்கையுடன் வலுவான மற்றும் பராமரிக்கக்கூடிய பயன்பாடுகளை உருவாக்குவது எப்படி என்பதை அறியவும்.
டைப்ஸ்கிரிப்ட் விண்வெளி ஆய்வு: மிஷன் கண்ட்ரோல் டைப் சேஃப்டி
விண்வெளி ஆய்வாளர்களே வருக! டைப்ஸ்கிரிப்ட்டின் வசீகரிக்கும் உலகத்தையும் அதன் சக்திவாய்ந்த டைப் சிஸ்டத்தையும் ஆராய்வதே இன்றைய நமது மிஷன். வலுவான, நம்பகமான மற்றும் பராமரிக்கக்கூடிய அப்ளிகேஷன்களை உருவாக்குவதற்கான நமது "மிஷன் கண்ட்ரோல்" ஆக டைப்ஸ்கிரிப்டைக் கருதுங்கள். அதன் மேம்பட்ட டைப் சேஃப்டி அம்சங்களைப் பயன்படுத்துவதன் மூலம், சாஃப்ட்வேர் டெவலப்மென்ட்டின் சிக்கல்களை நம்பிக்கையுடன் வழிநடத்தலாம், பிழைகளைக் குறைக்கலாம் மற்றும் கோட் தரத்தை அதிகரிக்கலாம். இந்த பயணம், அடிப்படை கருத்துக்கள் முதல் மேம்பட்ட நுட்பங்கள் வரை பரந்த அளவிலான தலைப்புகளை உள்ளடக்கும், டைப்ஸ்கிரிப்ட் டைப் சேஃப்டி மாஸ்டராக மாறுவதற்கான அறிவையும் திறன்களையும் உங்களுக்கு வழங்கும்.
டைப் சேஃப்டி ஏன் முக்கியம்: பிரபஞ்ச மோதல்களைத் தடுத்தல்
நாம் புறப்படுவதற்கு முன், டைப் சேஃப்டி ஏன் மிகவும் முக்கியமானது என்பதைப் புரிந்துகொள்வோம். ஜாவாஸ்கிரிப்ட் போன்ற டைனமிக் மொழிகளில், பிழைகள் பெரும்பாலும் ரன்டைமில் மட்டுமே வெளிப்படும், இது எதிர்பாராத செயலிழப்புகள் மற்றும் விரக்தியடைந்த பயனர்களுக்கு வழிவகுக்கும். ஸ்டாட்டிக் டைப்பிங்கைக் கொண்ட டைப்ஸ்கிரிப்ட், முன்கூட்டியே எச்சரிக்கை அமைப்பாக செயல்படுகிறது. இது டெவலப்மென்ட் நேரத்தில் சாத்தியமான டைப் தொடர்பான பிழைகளை அடையாளம் கண்டு, அவை ப்ரொடக்ஷனை அடைவதைத் தடுக்கிறது. இந்த முன்கூட்டிய அணுகுமுறை பிழைத்திருத்த நேரத்தை கணிசமாகக் குறைக்கிறது மற்றும் உங்கள் அப்ளிகேஷன்களின் ஒட்டுமொத்த ஸ்திரத்தன்மையை மேம்படுத்துகிறது.
நாணய மாற்றுக்களைக் கையாளும் ஒரு நிதி பயன்பாட்டை நீங்கள் உருவாக்கும் ஒரு சூழ்நிலையைக் கவனியுங்கள். டைப் சேஃப்டி இல்லாமல், நீங்கள் தற்செயலாக ஒரு கணக்கீட்டு செயல்பாட்டிற்கு எண்ணுக்கு பதிலாக ஒரு சரத்தை அனுப்பலாம், இது தவறான முடிவுகளுக்கும் சாத்தியமான நிதி இழப்புகளுக்கும் வழிவகுக்கும். டைப்ஸ்கிரிப்ட் இதை டெவலப்மென்ட் நேரத்தில் கண்டறிய முடியும், உங்கள் கணக்கீடுகள் எப்போதும் சரியான தரவு வகைகளுடன் செய்யப்படுவதை உறுதி செய்கிறது.
டைப்ஸ்கிரிப்ட் அடித்தளம்: அடிப்படை டைப்ஸ் மற்றும் இன்டெர்ஃபேஸ்கள்
நமது பயணம் டைப்ஸ்கிரிப்ட்டின் அடிப்படை கட்டிடத் தொகுதிகளில் தொடங்குகிறது: அடிப்படை டைப்ஸ் மற்றும் இன்டெர்ஃபேஸ்கள். டைப்ஸ்கிரிப்ட் number, string, boolean, null, undefined மற்றும் symbol உள்ளிட்ட விரிவான ப்ரிமிடிவ் டைப்ஸ்களை வழங்குகிறது. இந்த டைப்ஸ் உங்கள் தரவின் கட்டமைப்பு மற்றும் நடத்தையை வரையறுப்பதற்கு ஒரு உறுதியான அடித்தளத்தை வழங்குகின்றன.
இன்டெர்ஃபேஸ்கள், மறுபுறம், ஆப்ஜெக்ட்களின் வடிவத்தை குறிப்பிடும் ஒப்பந்தங்களை வரையறுக்க உங்களை அனுமதிக்கின்றன. அவை ஒரு ஆப்ஜெக்ட் கொண்டிருக்க வேண்டிய ப்ராப்பர்டீஸ் மற்றும் மெத்தட்களை விவரிக்கின்றன, உங்கள் கோட் பேஸில் நிலைத்தன்மை மற்றும் கணிக்கக்கூடிய தன்மையை உறுதி செய்கின்றன.
உதாரணம்: ஒரு எம்ப்ளாயி இன்டெர்ஃபேஸை வரையறுத்தல்
நமது கற்பனையான நிறுவனத்தில் ஒரு எம்ப்ளாயியை பிரதிநிதித்துவப்படுத்த ஒரு இன்டெர்ஃபேஸை உருவாக்குவோம்:
interface Employee {
id: number;
name: string;
title: string;
salary: number;
department: string;
address?: string; // விருப்பப் ப்ராப்பர்டி
}
இந்த இன்டெர்ஃபேஸ் ஒரு எம்ப்ளாயி ஆப்ஜெக்ட் கொண்டிருக்க வேண்டிய ப்ராப்பர்டீஸ், அதாவது id, name, title, salary மற்றும் department ஆகியவற்றை வரையறுக்கிறது. address ப்ராப்பர்டி ? குறியீட்டைப் பயன்படுத்தி விருப்பமானதாகக் குறிக்கப்பட்டுள்ளது, இது தேவையில்லை என்பதைக் குறிக்கிறது.
இப்போது, இந்த இன்டெர்ஃபேஸுடன் இணங்கும் ஒரு எம்ப்ளாயி ஆப்ஜெக்ட்டை உருவாக்குவோம்:
const employee: Employee = {
id: 123,
name: "Alice Johnson",
title: "Software Engineer",
salary: 80000,
department: "Engineering"
};
டைப்ஸ்கிரிப்ட் இந்த ஆப்ஜெக்ட் Employee இன்டெர்ஃபேஸுக்கு இணங்குவதை உறுதிசெய்யும், இது தேவையான ப்ராப்பர்டீஸ்களை தற்செயலாக விடுவதையோ அல்லது தவறான தரவு வகைகளை ஒதுக்குவதையோ தடுக்கும்.
ஜெனரிக்ஸ்: மறுபயன்பாட்டு மற்றும் டைப்-சேஃப் காம்போனென்ட்களை உருவாக்குதல்
ஜெனரிக்ஸ் டைப்ஸ்கிரிப்ட்டின் சக்திவாய்ந்த அம்சமாகும், இது வெவ்வேறு தரவு வகைகளுடன் வேலை செய்யக்கூடிய மறுபயன்பாட்டு காம்போனென்ட்களை உருவாக்க உங்களை அனுமதிக்கிறது. அவை மீண்டும் மீண்டும் வரும் கோட் மற்றும் மேனுவல் டைப் காஸ்டிங் தேவையைத் தவிர்த்து, நெகிழ்வான மற்றும் டைப்-சேஃப் ஆன கோட்டை எழுத உங்களை அனுமதிக்கின்றன.
உதாரணம்: ஒரு ஜெனரிக் லிஸ்ட்டை உருவாக்குதல்
எந்தவொரு வகையின் கூறுகளையும் வைத்திருக்கக்கூடிய ஒரு ஜெனரிக் லிஸ்ட்டை உருவாக்குவோம்:
class List<T> {
private items: T[] = [];
addItem(item: T): void {
this.items.push(item);
}
getItem(index: number): T | undefined {
return this.items[index];
}
getAllItems(): T[] {
return this.items;
}
}
// பயன்பாடு
const numberList = new List<number>();
numberList.addItem(1);
numberList.addItem(2);
const stringList = new List<string>();
stringList.addItem("Hello");
stringList.addItem("World");
console.log(numberList.getAllItems()); // வெளியீடு: [1, 2]
console.log(stringList.getAllItems()); // வெளியீடு: ["Hello", "World"]
இந்த எடுத்துக்காட்டில், List கிளாஸ் ஜெனரிக் ஆகும், அதாவது எந்தவொரு டைப் T உடனும் பயன்படுத்தலாம். நாம் ஒரு List<number> ஐ உருவாக்கும்போது, டைப்ஸ்கிரிப்ட் லிஸ்ட்டில் எண்களை மட்டுமே சேர்க்க முடியும் என்பதை உறுதி செய்கிறது. இதேபோல், நாம் ஒரு List<string> ஐ உருவாக்கும்போது, டைப்ஸ்கிரிப்ட் சரங்களை மட்டுமே சேர்க்க முடியும் என்பதை உறுதி செய்கிறது. இது லிஸ்ட்டில் தவறான டைப் டேட்டாவை தற்செயலாக சேர்ப்பதன் அபாயத்தை நீக்குகிறது.
மேம்பட்ட டைப்ஸ்: துல்லியத்துடன் டைப் சேஃப்டியை மெருகூட்டுதல்
டைப்ஸ்கிரிப்ட் மேம்பட்ட டைப்ஸ்களின் வரம்பை வழங்குகிறது, இது டைப் சேஃப்டியை ஃபைன்-ட்யூன் செய்ய மற்றும் சிக்கலான டைப் உறவுகளை வெளிப்படுத்த உங்களை அனுமதிக்கிறது. இந்த டைப்ஸ்களில் அடங்கும்:
- யூனியன் டைப்ஸ் (Union Types): பல டைப்களில் ஒன்றாக இருக்கக்கூடிய ஒரு மதிப்பைக் குறிக்கிறது.
- இன்டர்செக்ஷன் டைப்ஸ் (Intersection Types): பல டைப்ஸ்களை ஒரு ஒற்றை டைப்பாக ஒருங்கிணைக்கிறது.
- கண்டிஷனல் டைப்ஸ் (Conditional Types): மற்ற டைப்களைச் சார்ந்துள்ள டைப்ஸ்களை வரையறுக்க உங்களை அனுமதிக்கிறது.
- மேப்ட் டைப்ஸ் (Mapped Types): தற்போதுள்ள டைப்ஸ்களை புதிய டைப்ஸ்களாக மாற்றுகிறது.
- டைப் கார்ட்ஸ் (Type Guards): ஒரு குறிப்பிட்ட ஸ்கோப்பிற்குள் ஒரு வேரியபிளின் டைப்பை சுருக்க உங்களை அனுமதிக்கிறது.
உதாரணம்: நெகிழ்வான உள்ளீட்டிற்கு யூனியன் டைப்ஸ்களைப் பயன்படுத்துதல்
ஒரு சரம் அல்லது எண்ணை உள்ளீடாக ஏற்கக்கூடிய ஒரு செயல்பாட்டைக் கொண்டிருப்பதாக வைத்துக்கொள்வோம்:
function printValue(value: string | number): void {
console.log(value);
}
printValue("Hello"); // செல்லுபடியாகும்
printValue(123); // செல்லுபடியாகும்
// printValue(true); // செல்லுபடியாகாது (boolean அனுமதிக்கப்படவில்லை)
string | number என்ற யூனியன் டைப்பைப் பயன்படுத்துவதன் மூலம், value அளவுரு ஒரு சரம் அல்லது எண்ணாக இருக்கலாம் என்பதை நாம் குறிப்பிடலாம். டைப்ஸ்கிரிப்ட் இந்த டைப் கட்டுப்பாட்டை அமல்படுத்தும், ஒரு பூலியன் அல்லது வேறு எந்த செல்லுபடியாகாத டைப்பையும் செயல்பாட்டிற்கு தற்செயலாக அனுப்புவதைத் தடுக்கும்.
உதாரணம்: டைப் மாற்றத்திற்கு கண்டிஷனல் டைப்ஸ்களைப் பயன்படுத்துதல்
கண்டிஷனல் டைப்ஸ் மற்ற டைப்களைச் சார்ந்துள்ள டைப்ஸ்களை உருவாக்க உங்களை அனுமதிக்கிறது. ஆப்ஜெக்ட்டின் ப்ராப்பர்டீஸ்களின் அடிப்படையில் டைனமிக் ஆக உருவாக்கப்படும் டைப்ஸ்களை வரையறுக்க இது குறிப்பாக பயனுள்ளதாக இருக்கும்.
type ReturnType<T> = T extends (...args: any[]) => infer R ? R : any;
function myFunction(x: number): string {
return x.toString();
}
type MyFunctionReturnType = ReturnType<typeof myFunction>; // string
இங்கே, `ReturnType` கண்டிஷனல் டைப், `T` ஒரு செயல்பாடா என்று சரிபார்க்கிறது. அது அப்படி இருந்தால், அது செயல்பாட்டின் ரிட்டர்ன் டைப் `R` ஐ ஊகிக்கும். இல்லையெனில், அது இயல்பாக `any` ஆக இருக்கும். இது தொகுப்பு நேரத்தில் ஒரு செயல்பாட்டின் ரிட்டர்ன் டைப்பை டைனமிக் ஆக தீர்மானிக்க நம்மை அனுமதிக்கிறது.
மேப்ட் டைப்ஸ்: தானியங்கு டைப் மாற்றங்கள்
மேப்ட் டைப்ஸ், டைப் இன் ஒரு ப்ராப்பர்டிக்கு ஒரு மாற்றத்தைப் பயன்படுத்துவதன் மூலம் தற்போதுள்ள டைப்ஸ்களை மாற்றுவதற்கு ஒரு சுருக்கமான வழியை வழங்குகிறது. இது விருப்பமான அல்லது படிக்க-மட்டுமே ப்ராப்பர்டீஸ்களை உருவாக்குவது போன்ற ஆப்ஜெக்ட்டின் ப்ராப்பர்டீஸ்களை மாற்றியமைக்கும் யுடிலிட்டி டைப்ஸ்களை உருவாக்குவதற்கு குறிப்பாக பயனுள்ளதாக இருக்கும்.
உதாரணம்: ஒரு ரீட்ஒன்லி டைப்பை உருவாக்குதல்
ஒரு ஆப்ஜெக்ட்டின் அனைத்து ப்ராப்பர்டீஸ்களையும் படிக்க-மட்டுமே ஆக்கும் ஒரு மேப்ட் டைப்பை உருவாக்குவோம்:
type Readonly<T> = {
readonly [K in keyof T]: T[K];
};
interface Person {
name: string;
age: number;
}
const person: Readonly<Person> = {
name: "John Doe",
age: 30
};
// person.age = 31; // பிழை: 'age' என்பது படிக்க-மட்டுமே ப்ராப்பர்டி என்பதால் ஒதுக்க முடியாது.
`Readonly<T>` மேப்ட் டைப் `T` இன் அனைத்து ப்ராப்பர்டீஸ் `K` யையும் மறுபடியும் செய்து அவற்றை படிக்க-மட்டுமே ஆக்குகிறது. இது ஆப்ஜெக்ட் உருவாக்கப்பட்ட பிறகு அதன் ப்ராப்பர்டீஸ்களை தற்செயலாக மாற்றுவதைத் தடுக்கிறது.
யுடிலிட்டி டைப்ஸ்: உள்ளமைக்கப்பட்ட டைப் மாற்றங்களை லீவரேஜ் செய்தல்
டைப்ஸ்கிரிப்ட் பொதுவான டைப் மாற்றங்களை வழங்கக்கூடிய உள்ளமைக்கப்பட்ட யுடிலிட்டி டைப்ஸ்களின் தொகுப்பை வழங்குகிறது. இந்த யுடிலிட்டி டைப்ஸ்களில் அடங்கும்:
Partial<T>:Tஇன் அனைத்து ப்ராப்பர்டீஸ்களையும் விருப்பமானதாக ஆக்குகிறது.Required<T>:Tஇன் அனைத்து ப்ராப்பர்டீஸ்களையும் கட்டாயமாக்குகிறது.Readonly<T>:Tஇன் அனைத்து ப்ராப்பர்டீஸ்களையும் படிக்க-மட்டுமே ஆக்குகிறது.Pick<T, K>:Tயிலிருந்து ப்ராப்பர்டீஸ்Kயின் ஒரு தொகுப்பைத் தேர்ந்தெடுப்பதன் மூலம் புதிய டைப்பை உருவாக்குகிறது.Omit<T, K>:Tயிலிருந்து ப்ராப்பர்டீஸ்Kயின் ஒரு தொகுப்பை நீக்குவதன் மூலம் புதிய டைப்பை உருவாக்குகிறது.Record<K, T>:Kமற்றும்Tயின் மதிப்புகளுடன் கூடிய ஒரு டைப்பை உருவாக்குகிறது.
உதாரணம்: விருப்ப ப்ராப்பர்டீஸ்களை உருவாக்க பார்ஷியலைப் பயன்படுத்துதல்
நமது Employee இன்டெர்ஃபேஸின் அனைத்து ப்ராப்பர்டீஸ்களையும் விருப்பமானதாக மாற்ற Partial<T> யுடிலிட்டி டைப்பைப் பயன்படுத்துவோம்:
type PartialEmployee = Partial<Employee>;
const partialEmployee: PartialEmployee = {
name: "Jane Smith"
};
இப்போது, name ப்ராப்பர்டியை மட்டும் குறிப்பிடுவதன் மூலம் ஒரு எம்ப்ளாயி ஆப்ஜெக்ட்டை உருவாக்கலாம். மற்ற ப்ராப்பர்டீஸ்கள் Partial<T> யுடிலிட்டி டைப்பிற்கு நன்றி விருப்பமானவை.
இம்யூடபிலிட்டி: வலுவான மற்றும் கணிக்கக்கூடிய அப்ளிகேஷன்களை உருவாக்குதல்
இம்யூடபிலிட்டி என்பது ஒரு நிரலாக்க முறைமையாகும், இது உருவாக்கப்பட்ட பிறகு மாற்ற முடியாத தரவு கட்டமைப்புகளை உருவாக்குவதை வலியுறுத்துகிறது. இந்த அணுகுமுறை அதிகரித்த கணிக்கக்கூடிய தன்மை, பிழைகளின் அபாயத்தைக் குறைத்தல் மற்றும் மேம்பட்ட செயல்திறன் உள்ளிட்ட பல நன்மைகளை வழங்குகிறது.
டைப்ஸ்கிரிப்ட் கொண்டு இம்யூடபிலிட்டியை அமல்படுத்துதல்
டைப்ஸ்கிரிப்ட் உங்கள் கோடில் இம்யூடபிலிட்டியை அமல்படுத்த உதவும் பல அம்சங்களை வழங்குகிறது:
- ரீட்ஒன்லி ப்ராப்பர்டீஸ் (Readonly Properties): ப்ராப்பர்டீஸ்களை இனிஷியலைசேஷனுக்குப் பிறகு மாற்றுவதைத் தடுக்க
readonlyகீவேர்டைப் பயன்படுத்தவும். - ஆப்ஜெக்ட்களை ஃப்ரீஸ் செய்தல் (Freezing Objects): ஆப்ஜெக்ட்களை மாற்றுவதைத் தடுக்க
Object.freeze()மெத்தடைப் பயன்படுத்தவும். - இம்யூடபிள் டேட்டா ஸ்ட்ரக்சர்ஸ் (Immutable Data Structures): Immutable.js அல்லது Mori போன்ற லைப்ரரிகளிலிருந்து இம்யூடபிள் டேட்டா ஸ்ட்ரக்சர்ஸ்களைப் பயன்படுத்தவும்.
உதாரணம்: ரீட்ஒன்லி ப்ராப்பர்டீஸ்களைப் பயன்படுத்துதல்
id ப்ராப்பர்டியை படிக்க-மட்டுமே ஆக்குவதற்கு நமது Employee இன்டெர்ஃபேஸை மாற்றுவோம்:
interface Employee {
readonly id: number;
name: string;
title: string;
salary: number;
department: string;
}
const employee: Employee = {
id: 123,
name: "Alice Johnson",
title: "Software Engineer",
salary: 80000,
department: "Engineering"
};
// employee.id = 456; // பிழை: 'id' என்பது படிக்க-மட்டுமே ப்ராப்பர்டி என்பதால் ஒதுக்க முடியாது.
இப்போது, employee ஆப்ஜெக்ட் உருவாக்கப்பட்ட பிறகு அதன் id ப்ராப்பர்டியை மாற்ற முடியாது.
ஃபங்ஷனல் ப்ரோகிராமிங்: டைப் சேஃப்டி மற்றும் கணிக்கக்கூடிய தன்மையை ஏற்றுக்கொள்வது
ஃபங்ஷனல் ப்ரோகிராமிங் என்பது ஒரு நிரலாக்க முறைமையாகும், இது தூய செயல்பாடுகள், இம்யூடபிலிட்டி மற்றும் டிக்ளரேட்டிவ் ப்ரோகிராமிங் ஆகியவற்றின் பயன்பாட்டை வலியுறுத்துகிறது. இந்த அணுகுமுறை மேலும் பராமரிக்கக்கூடிய, சோதிக்கக்கூடிய மற்றும் நம்பகமான கோட்களுக்கு வழிவகுக்கும்.
ஃபங்ஷனல் ப்ரோகிராமிங்கிற்கு டைப்ஸ்கிரிப்ட்டை லீவரேஜ் செய்தல்
டைப்ஸ்கிரிப்ட்டின் டைப் சிஸ்டம், வலுவான டைப் செக்கிங்கை வழங்குவதன் மூலமும், தெளிவான உள்ளீடு மற்றும் வெளியீடு டைப்ஸ்களுடன் தூய செயல்பாடுகளை வரையறுக்க உங்களை அனுமதிப்பதன் மூலமும் ஃபங்ஷனல் ப்ரோகிராமிங் கொள்கைகளை பூர்த்தி செய்கிறது.
உதாரணம்: ஒரு தூய செயல்பாட்டை உருவாக்குதல்
எண்களின் வரிசையின் தொகையைக் கணக்கிடும் ஒரு தூய செயல்பாட்டை உருவாக்குவோம்:
function sum(numbers: number[]): number {
let total = 0;
for (const number of numbers) {
total += number;
}
return total;
}
const numbers = [1, 2, 3, 4, 5];
const total = sum(numbers);
console.log(total); // வெளியீடு: 15
இந்த செயல்பாடு தூயது, ஏனெனில் இது எப்போதும் ஒரே உள்ளீட்டிற்கு ஒரே வெளியீட்டை வழங்கும், மேலும் இதற்கு பக்க விளைவுகள் இல்லை. இது சோதிக்கவும் புரிந்துகொள்ளவும் எளிதாக்குகிறது.
பிழை கையாளுதல்: வலுவான அப்ளிகேஷன்களை உருவாக்குதல்
பிழை கையாளுதல் என்பது சாஃப்ட்வேர் டெவலப்மென்ட்டின் ஒரு முக்கியமான அம்சமாகும். டைப்ஸ்கிரிப்ட் பிழை கையாளுதல் காட்சிகளுக்கு தொகுப்பு-நேர டைப் செக்கிங்கை வழங்குவதன் மூலம் மேலும் வலுவான அப்ளிகேஷன்களை உருவாக்க உதவும்.
உதாரணம்: பிழை கையாளுதலுக்கு டிஸ்க்ரிமினேட்டட் யூனியன்ஸ்களைப் பயன்படுத்துதல்
API அழைப்பின் முடிவைக் குறிக்க டிஸ்க்ரிமினேட்டட் யூனியன்ஸ்களைப் பயன்படுத்துவோம், இது ஒரு வெற்றி அல்லது பிழையாக இருக்கலாம்:
interface Success<T> {
success: true;
data: T;
}
interface Error {
success: false;
error: string;
}
type Result<T> = Success<T> | Error;
async function fetchData(): Promise<Result<string>> {
try {
// API அழைப்பை உருவகப்படுத்துதல்
const data = await Promise.resolve("Data from API");
return { success: true, data };
} catch (error: any) {
return { success: false, error: error.message };
}
}
async function processData() {
const result = await fetchData();
if (result.success) {
console.log("Data:", result.data);
} else {
console.error("Error:", result.error);
}
}
processData();
இந்த எடுத்துக்காட்டில், Result<T> டைப் ஒரு டிஸ்க்ரிமினேட்டட் யூனியன் ஆகும், இது Success<T> அல்லது Error ஆக இருக்கலாம். success ப்ராப்பர்டி ஒரு டிஸ்க்ரிமினேட்டராக செயல்படுகிறது, API அழைப்பு வெற்றிகரமாக இருந்ததா அல்லது இல்லையா என்பதை எளிதாக தீர்மானிக்க அனுமதிக்கிறது. டைப்ஸ்கிரிப்ட் இந்த டைப் கட்டுப்பாட்டை அமல்படுத்தும், நாம் வெற்றி மற்றும் பிழை காட்சிகளை முறையான முறையில் கையாள்வதை உறுதிசெய்யும்.
மிஷன் நிறைவேற்றப்பட்டது: டைப்ஸ்கிரிப்ட் டைப் சேஃப்டியில் தேர்ச்சி பெறுதல்
வாழ்த்துக்கள், விண்வெளி ஆய்வாளர்களே! நீங்கள் டைப்ஸ்கிரிப்ட் டைப் சேஃப்டி உலகத்தை வெற்றிகரமாக வழிநடத்தி அதன் சக்திவாய்ந்த அம்சங்களைப் பற்றிய ஆழமான புரிதலைப் பெற்றுள்ளீர்கள். இந்த வழிகாட்டியில் விவாதிக்கப்பட்ட நுட்பங்கள் மற்றும் கொள்கைகளைப் பயன்படுத்துவதன் மூலம், நீங்கள் மேலும் வலுவான, நம்பகமான மற்றும் பராமரிக்கக்கூடிய அப்ளிகேஷன்களை உருவாக்கலாம். உங்கள் திறன்களை மேலும் மேம்படுத்த டைப்ஸ்கிரிப்ட்டின் டைப் சிஸ்டத்துடன் தொடர்ந்து ஆராயவும் பரிசோதனை செய்யவும் நினைவில் கொள்ளுங்கள், மேலும் உண்மையான டைப் சேஃப்டி மாஸ்டராக மாறுங்கள்.
மேலும் ஆய்வு: ஆதாரங்கள் மற்றும் சிறந்த நடைமுறைகள்
உங்கள் டைப்ஸ்கிரிப்ட் பயணத்தைத் தொடர, இந்த ஆதாரங்களை ஆராயுங்கள்:
- டைப்ஸ்கிரிப்ட் ஆவணங்கள்: அதிகாரப்பூர்வ டைப்ஸ்கிரிப்ட் ஆவணங்கள் மொழியின் அனைத்து அம்சங்களையும் கற்றுக்கொள்வதற்கான விலைமதிப்பற்ற ஆதாரமாகும்.
- டைப்ஸ்கிரிப்ட் டீப் டைவ்: டைப்ஸ்கிரிப்ட்டின் மேம்பட்ட அம்சங்களுக்கான ஒரு விரிவான வழிகாட்டி.
- டைப்ஸ்கிரிப்ட் கையேடு: டைப்ஸ்கிரிப்ட்டின் தொடரியல், சொற்பொருள் மற்றும் டைப் சிஸ்டம் பற்றிய விரிவான மேலோட்டம்.
- திறந்த மூல டைப்ஸ்கிரிப்ட் திட்டங்கள்: அனுபவம் வாய்ந்த டெவலப்பர்களிடமிருந்து கற்றுக்கொள்வதற்கும், நிஜ-உலக காட்சிகளில் டைப்ஸ்கிரிப்டை அவர்கள் எவ்வாறு பயன்படுத்துகிறார்கள் என்பதைப் பார்ப்பதற்கும் GitHub இல் உள்ள திறந்த மூல டைப்ஸ்கிரிப்ட் திட்டங்களை ஆராயுங்கள்.
டைப் சேஃப்டியை ஏற்றுக்கொள்வதன் மூலமும் தொடர்ந்து கற்றுக்கொள்வதன் மூலமும், டைப்ஸ்கிரிப்ட்டின் முழு திறனையும் நீங்கள் திறக்க முடியும் மற்றும் காலப்போக்கில் நிற்கும் விதிவிலக்கான மென்பொருளை உருவாக்க முடியும். ஹாப்பி கோடிங்!